package com.itheima.d1_collection_set;

import java.util.TreeSet;

/*
    目标：掌握TreeSet集合的使用。

    排序规则 :
        根据compareTo方法的返回值进行指定元素位置
        如果返回值为负数，表示当前存入的元素是较小值，存左边
        如果返回值为0，表示当前存入的元素相等 , 不存
        如果返回值为正数，表示当前存入的元素是较大值，存右边
    this表示当前要存储的元素 , o表示的是已经存在的元素
 */
public class SetTest4 {
    public static void main(String[] args) {
        // 基本数据类型
        TreeSet<Object> datas = new TreeSet<>();
        datas.add(300);
        datas.add(100);
        datas.add(700);
        datas.add(800);
        datas.add(200);

        System.out.println(datas);

        TreeSet<Object> strTree = new TreeSet<>();
        strTree.add("abc");
        strTree.add("bbc");
        strTree.add("tbc");
        strTree.add("auc");

        System.out.println(strTree);


        // TreeSet 排序功能
        TreeSet<Student> students = new TreeSet<>((stu1, stu2) -> {
            return stu1.getAge() - stu2.getAge();
        });
        students.add(new Student("Timor", 38));
        students.add(new Student("lick", 19));
        students.add(new Student("relay", 21));

        System.out.println(students);
    }
}
